package com.sykj.controller;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.sykj.bean.Dept;
import com.sykj.bean.Emp;
import com.sykj.service.DeptService;
import com.sykj.service.EmpService;

@Controller
@RequestMapping("/emp")
public class EmpController {
	
	@Autowired
	private EmpService empService;
	
	@Autowired
	private DeptService deptService;
	
     /**
      * 列表显示员工信息及部门名称,同时填充综合查询的部门下拉框      
      * @return
      */
	@RequestMapping("/queryEmps")
	public String queryEmps(Emp emp,HttpServletRequest request,HttpSession session){//取值页面的查询条件
		//取数据
		List<Emp> empList=empService.queryEmps(emp);//员工信息
		List<Dept> deptList=deptService.list();//部门信息
			
		
		//跳转前保存到容器中
		request.setAttribute("empList", empList);
		session.setAttribute("deptList", deptList);//添加/修改也需要下拉框 
		
		//跳转到页面emp.jsp的时候,需要带过去2个数据(部门信息和员工信息)
		return "/emp.jsp";
	}
	
	@RequestMapping("/deleteEmp/{eid}")
	public String deleteEmp(@PathVariable("eid") Integer eid){//取值页面的查询条件
		
		empService.removeById(eid);//删除
		
		return "redirect:/emp/queryEmps"; //重新查询所有
	}
	
	@RequestMapping("/saveEmp")
	public String saveEmp(Emp emp){//取值页面的查询条件
		
		empService.save(emp);
		
		return "redirect:/emp/queryEmps"; //重新查询所有
	}
	
	@RequestMapping("/queryByEmpId/{eid}")
	public String queryByEmpId(@PathVariable("eid") Integer eid,HttpServletRequest request){//取值页面的查询条件
				
		Emp emp=empService.getById(eid);//根据id查询员工对象
		
		
		request.setAttribute("emp", emp); //将数据保存到容器中在页面上显示
		
		return "/update.jsp"; //重新查询所有
	}
	
	@RequestMapping("/updateEmp")
	public String updateEmp(Emp emp){//取值页面的查询条件
		
		empService.updateById(emp);
		
		return "redirect:/emp/queryEmps"; //重新查询所有
	}
	
}
